import java.util.HashSet;
import java.util.Iterator;
class Phone {// 定义手机类
    private String brand; // 品牌
    private double price; // 价格，私有
    private String model; // 型号
    public Phone(String brand, double price, String model) {// 有参构造方法
        this.brand = brand;
        this.price = price;
        this.model = model;
    }
    public double getPrice() {// 获取价格
        return price;
    }
    public void setPrice(double price) { // 设置价格
        this.price = price;
    }
    @Override
    public String toString() {  // 重写toString方法，方便输出
        return "品牌：" + brand + "\t\t价格：" + price + "\t\t型号：" + model;
    }
    public String getBrand() {
        return brand;
    }
    public void setBrand(String brand) {
        this.brand = brand;
    }
}
public class tt {
    public static void main(String[] args) {
        Phone phone1 = new Phone("三星", 3458.0, "Galaxy");  // a. 创建3个手机对象并赋值
        Phone phone2 = new Phone("iphone", 2800.0, "苹果");
        Phone phone3 = new Phone("三星", 3499.0, "note 3");
        HashSet<Phone> phoneSet = new HashSet<>(); // b. 保存到HashSet
        phoneSet.add(phone1);
        phoneSet.add(phone2);
        phoneSet.add(phone3);
        System.out.println("----- 初始集合内容 -----");// c. 使用迭代器换行输出
        Iterator<Phone> iterator = phoneSet.iterator();
        while (iterator.hasNext()) {
            System.out.println(iterator.next());
        }
        for (Phone phone : phoneSet) { // d. 价格低于3000元的手机，价格提升500元
            if (phone.getPrice() < 3000) {
                double newPrice = phone.getPrice() + 500;
                phone.setPrice(newPrice);
            }
        }
        System.out.println("\n----- 价格调整后集合内容 -----");// 再次输出修改后的集合
        for (Phone phone : phoneSet) {
            System.out.println(phone);
        }
        int samsungCount = 0; // e. 统计三星手机个数
        for (Phone phone : phoneSet) {
            if ("三星".equals(phone.getBrand())) {
                samsungCount++;
            }
        }
        System.out.println("\n三星手机的个数：" + samsungCount);
    }
}